package model.dao;

import java.sql.SQLException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import model.vo.MplistVO;

import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

public class ProjectDAOImpl extends SqlMapClientDaoSupport implements ProjectDAO {
	//마감 적용
	@Override
	public void Magam_apply(Map map) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().update("project.Magam_apply", map);
	}
	//마감 취소
	@Override
	public void Magam_cancel(Map map) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().update("project.Magam_cancel", map);
	}
	//[프로젝트 관리]
	//프로젝트 관리
	@Override
	public List mplist(String pro_loginID) throws SQLException {
		return super.getSqlMapClientTemplate().getSqlMapClient().queryForList("project.mplist", pro_loginID);
	}
	//최대 순번 구해오기
	@Override
	public Integer mplist_maxNo() throws SQLException {
		return (Integer) super.getSqlMapClientTemplate().getSqlMapClient().queryForObject("project.mplist_maxNo");
	}
	//autoPro_pindex 순번 구하기
	@Override
	public int autoPro_pindex(String pro_sday) throws SQLException {
		return (Integer) super.getSqlMapClientTemplate().getSqlMapClient().queryForObject("project.autoPro_pindex",pro_sday);
	}
	//착수일의 iap버전 검색 
	@Override
	public boolean identity_pro_pindex(MplistVO vo) throws SQLException {
		boolean flag=false;
		String str=(String) super.getSqlMapClientTemplate().getSqlMapClient().queryForObject("project.identity_pro_pindex", vo);
		if(str!=null){
			flag=true;
		}
		return flag;
	}
	//프로젝트 관리 등록
	@Override
	public void mplist_insert(MplistVO vo) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().insert("project.mplist_insert", vo);
	}
	//프로젝트 관리 삭제
	@Override
	public void mplist_delete(int pro_id) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().delete("project.mplist_delete", pro_id);
	}
	//프로젝트 관리 수정 페이지로 이동
	@Override
	public MplistVO mplist_updatePage(int pro_id) throws SQLException {
		return (MplistVO) super.getSqlMapClientTemplate().getSqlMapClient().queryForObject("project.mplist_updatePage", pro_id);
	}
	//프로젝트 관리 수정
	@Override
	public void mplist_update(MplistVO vo) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().update("project.mplist_update", vo);
	}
	
	//[프로젝트 적용]
	//회차별 카운트
	@Override
	public List proSelectCount(int pro_id) throws SQLException {
		// TODO Auto-generated method stub
		return super.getSqlMapClientTemplate().queryForList("project.proSelectCount",pro_id);
	}
	//회차별 카운트
	@Override
	public List proSelectCountVO(int pro_id) throws SQLException {
		// TODO Auto-generated method stub
		return super.getSqlMapClientTemplate().queryForList("project.proSelectCountVO",pro_id);
	}
	//프로젝트 복사생성(등록)
	@Override
	public void mplist_SC_insert(Map map) throws SQLException {
		super.getSqlMapClientTemplate().getSqlMapClient().insert("project.mplist_SC_insert", map);
	}
}
